//
//  jquery.lt_backtotop.js
//  jq plugin
//
//  Created by sang alfred on 26/11/2013.
//
//

// todo: 需要增加返回顶部动画，目前zepto的animate无法处理非CSS运动

;(function($) {   
	 
	 //--------------------- public methods --------------------------
    function pp(info){
		if (window.console && window.console.log)    
			window.console.log('LOG: ' + info ); 
    }

    function create_backtotopbtn(obj,opts){
    	$('<div class="backtotop" title="返回顶部"></div>').appendTo(obj);
        $('.backtotop').tap(function() {
        	$('body').scrollTop(0);
        });
    }

    function topval_winh_backtotopbtn_show(opts){
        var topval = $(window).scrollTop();
		if(topval >= opts.showHeight){
			$('.backtotop').show();
		}else{
			$('.backtotop').hide();
		}
    }

    function fn_scrollevent(options){
    	$(window).bind("scroll", function(){
         	topval_winh_backtotopbtn_show(options);
         });
    }
    
    //----------------------- jquery   plugin  -----------------------
	$.fn.lt_backtotop = function(options) { 
        // init var
		var opts = $.extend({}, $.fn.lt_backtotop.defaults, options);
		//start plugin here
		return this.each(function() { 
			$this = $(this);

			//鼠标滚轮事件；
			fn_scrollevent(opts);

			//创建返回顶部按钮，点击回到顶部
           	create_backtotopbtn($this,opts);

        	//判断当前的滚动条位置距离顶部的距离超过当前窗口可视区的时候，显示按钮，否则隐藏按钮
            topval_winh_backtotopbtn_show(opts);
            
		});//end this.each
	};

	//插件的defaults    
	$.fn.lt_backtotop.defaults = {
		showHeight : 500,
		speed : 100
	};   
})(Zepto);